package com.hns.can.master.entity;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import com.hns.can.common.entity.BaseEntity;

/**
 * 驾驶员信息表对应的实体类
 * @author:Fisher
 * @email:zhuangcaijin@126.com
 * @version Revision 2.0.0
 */
@SuppressWarnings("serial")
@Entity
@Table(name = "T_BASE_DRV_INFO")
public class BaseDrvInfoEntity extends BaseEntity implements java.io.Serializable {
    
    // Fields
    
    /** 驾驶员ID */
    @Id
    @Column(name = "DRV_ID")
    private String drvId;
    
    /** 企业ID */
    @Column(name = "CORP_ID")
    private String corpId;
    
    /** 驾驶员姓名 */
    @Column(name = "DRV_NAME")
    private String drvName;
    
    /** 所属机构ID */
    @Column(name = "ORGAN_ID")
    private String organId;
    
    /** 姓别 */
    @Column(name = "GENDER")
    private String gender;
    
    /** 籍贯 */
    @Column(name = "NTVPLC")
    private String ntvplc;
    
    /** 出生日期 */
    @Column(name = "BIRTH_DATE")
    private String birthDate;
    
    /** 身份证号 */
    @Column(name = "IDCARD_NO")
    private String idcardNo;
    
    /** 联系地址 */
    @Column(name = "CTC_ADR")
    private String ctcAdr;
    
    /** 文化程度 */
    @Column(name = "CULTU_DGR")
    private String cultuDgr;
    
    /** 驾照日期 */
    @Column(name = "DRI_LIC_DATE")
    private String driLicDate;
    
    /** 驾驶证类型 */
    @Column(name = "DRI_LIC_TYPE")
    private String driLicType;
    
    /** 联系方式 */
    @Column(name = "CTC_WAY")
    private String ctcWay;
    
    /** 入职日期 */
    @Column(name = "ENTRY_DATE")
    private String entryDate;
    
    /** 驾驶证号 */
    @Column(name = "DRI_LIC_NO")
    private String driLicNo;
    
    /** 状态 */
    @Column(name = "ST")
    private String st;
    
    /** 在职员工工号 */
    @Column(name = "WORK_EMPE_EMPNO")
    private String workEmpeEmpno;
    
    /** 考勤卡卡号 */
    @Column(name = "TIMECARD_CARDNO")
    private String timecardCardno;
    
    /** 考勤卡背面号 */
    @Column(name = "TIMECARD_CARDNUM")
    private String timecardCardnum;
    
    /** 备注 */
    @Column(name = "REMARK")
    private String remark;
    
    /** 启停状态 */
    @Column(name = "ENABLED_ST")
    private String enabledSt;
    
    /** 创建时间 */
    @Column(name = "CRT_TIME")
    private Date   crtTime;
    
    /** 创建人 */
    @Column(name = "CRT_USER")
    private String crtUser;
    
    /** 更新时间 */
    @Column(name = "UPDATE_TIME")
    private Date   updateTime;
    
    /** 更新人 */
    @Column(name = "UPDATE_USER")
    private String updateUser;

	@Column(name = "SYSEAI_ID")
    private String syseaiId;

    /** 初次领证日期 */
    @Column(name = "FIRST_LICENSING_TIME")
    private String firstLicensingTime;

    /** 有效期限（年） */
    @Column(name = "VALIDITY_PERIOD")
    private String validityPeriod;

    /** 驾驶证发证机关 */
    @Column(name = "DRV_LICENSE_ORGAN")
    private String drvLicenseOrgan;

    /** 驾驶证发证机关 */
    @Column(name = "DRV_HEAD_PATH")
    private String drvHeadPath;
    // Interface property -- 界面上需要的属性 --
    
    // --organ 机构名称
    @Transient
    private String organName;
    
    @Transient
    private String corpName;
    
    @Transient
    private String lineId;
    
    @Transient
    private String signInTime;
    
    @Transient
    private String signOutTime;
    
    @Transient
    private BigDecimal workDura;
    
    @Transient
    private String carId; 
    
    @Transient
    private String licPltNo;
    @Transient
    private String lineName; 
    // Constructors
    
    /** default constructor */
    public BaseDrvInfoEntity() {
    }

    public String getDrvHeadPath() {
        return drvHeadPath;
    }

    public void setDrvHeadPath(String drvHeadPath) {
        this.drvHeadPath = drvHeadPath;
    }

    // Property accessors

    public String getFirstLicensingTime() {
        return firstLicensingTime;
    }

    public void setFirstLicensingTime(String firstLicensingTime) {
        this.firstLicensingTime = firstLicensingTime;
    }


    public String getValidityPeriod() {
        return validityPeriod;
    }

    public void setValidityPeriod(String validityPeriod) {
        this.validityPeriod = validityPeriod;
    }

    public String getDrvLicenseOrgan() {
        return drvLicenseOrgan;
    }

    public void setDrvLicenseOrgan(String drvLicenseOrgan) {
        this.drvLicenseOrgan = drvLicenseOrgan;
    }

    public String getDrvId() {
        return this.drvId;
    }
    
    public String getSyseaiId() {
		return syseaiId;
	}

	public void setSyseaiId(String syseaiId) {
		this.syseaiId = syseaiId;
	}

	public void setDrvId(String drvId) {
        this.drvId = drvId;
    }
    
    public String getCorpId() {
        return this.corpId;
    }
    
    public void setCorpId(String corpId) {
        this.corpId = corpId;
    }
    
    public String getDrvName() {
        return this.drvName;
    }
    
    public void setDrvName(String drvName) {
        this.drvName = drvName;
    }
    
    public String getOrganId() {
        return organId;
    }
    
    public void setOrganId(String organId) {
        this.organId = organId;
    }
    
    public String getGender() {
        return this.gender;
    }
    
    public void setGender(String gender) {
        this.gender = gender;
    }
    
    public String getNtvplc() {
        return this.ntvplc;
    }
    
    public void setNtvplc(String ntvplc) {
        this.ntvplc = ntvplc;
    }
    
    public String getBirthDate() {
        return this.birthDate;
    }
    
    public void setBirthDate(String birthDate) {
        this.birthDate = birthDate;
    }
    
    public String getIdcardNo() {
        return this.idcardNo;
    }
    
    public void setIdcardNo(String idcardNo) {
        this.idcardNo = idcardNo;
    }
    
    public String getCtcAdr() {
        return this.ctcAdr;
    }
    
    public void setCtcAdr(String ctcAdr) {
        this.ctcAdr = ctcAdr;
    }
    
    public String getCultuDgr() {
        return this.cultuDgr;
    }
    
    public void setCultuDgr(String cultuDgr) {
        this.cultuDgr = cultuDgr;
    }
    
    public String getDriLicDate() {
        return this.driLicDate;
    }
    
    public void setDriLicDate(String driLicDate) {
        this.driLicDate = driLicDate;
    }
    
    public String getDriLicType() {
        return this.driLicType;
    }
    
    public void setDriLicType(String driLicType) {
        this.driLicType = driLicType;
    }
    
    public String getCtcWay() {
        return this.ctcWay;
    }
    
    public void setCtcWay(String ctcWay) {
        this.ctcWay = ctcWay;
    }
    
    public String getEntryDate() {
        return this.entryDate;
    }
    
    public void setEntryDate(String entryDate) {
        this.entryDate = entryDate;
    }
    
    public String getDriLicNo() {
        return this.driLicNo;
    }
    
    public void setDriLicNo(String driLicNo) {
        this.driLicNo = driLicNo;
    }
    
    public String getSt() {
        return this.st;
    }
    
    public void setSt(String st) {
        this.st = st;
    }
    
    public String getWorkEmpeEmpno() {
        return this.workEmpeEmpno;
    }
    
    public void setWorkEmpeEmpno(String workEmpeEmpno) {
        this.workEmpeEmpno = workEmpeEmpno;
    }
    
    public String getTimecardCardno() {
        return this.timecardCardno;
    }
    
    public void setTimecardCardno(String timecardCardno) {
        this.timecardCardno = timecardCardno;
    }
    
    public String getTimecardCardnum() {
        return this.timecardCardnum;
    }
    
    public void setTimecardCardnum(String timecardCardnum) {
        this.timecardCardnum = timecardCardnum;
    }
    
    public String getRemark() {
        return this.remark;
    }
    
    public void setRemark(String remark) {
        this.remark = remark;
    }
    
    public String getEnabledSt() {
        return this.enabledSt;
    }
    
    public void setEnabledSt(String enabledSt) {
        this.enabledSt = enabledSt;
    }
    
    public Date getCrtTime() {
        return this.crtTime;
    }
    
    public void setCrtTime(Date crtTime) {
        this.crtTime = crtTime;
    }
    
    public String getCrtUser() {
        return this.crtUser;
    }
    
    public void setCrtUser(String crtUser) {
        this.crtUser = crtUser;
    }
    
    public Date getUpdateTime() {
        return this.updateTime;
    }
    
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    
    public String getUpdateUser() {
        return this.updateUser;
    }
    
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    
    // Interface property accessors -- 界面上需要的属性对应的访问 --
    
    public String getOrganName() {
        return organName;
    }
    
    public void setOrganName(String organName) {
        this.organName = organName;
    }

    public String getCorpName() {
        return corpName;
    }

    public void setCorpName(String corpName) {
        this.corpName = corpName;
    }

    public String getLineId() {
        return lineId;
    }

    public void setLineId(String lineId) {
        this.lineId = lineId;
    }

    public String getSignInTime() {
        return signInTime;
    }

    public void setSignInTime(String signInTime) {
        this.signInTime = signInTime;
    }

    public String getSignOutTime() {
        return signOutTime;
    }

    public void setSignOutTime(String signOutTime) {
        this.signOutTime = signOutTime;
    }

    public BigDecimal getWorkDura() {
        return workDura;
    }

    public void setWorkDura(BigDecimal workDura) {
        this.workDura = workDura;
    }

    public String getCarId() {
        return carId;
    }

    public void setCarId(String carId) {
        this.carId = carId;
    }

    public String getLicPltNo() {
        return licPltNo;
    }

    public void setLicPltNo(String licPltNo) {
        this.licPltNo = licPltNo;
    }

    public String getLineName() {
        return lineName;
    }

    public void setLineName(String lineName) {
        this.lineName = lineName;
    }
    
}
